Multi-level cell copyback program method in a non-volatile memory device

ABSTRACT

A multi-level cell copyback program method in a non-volatile memory device is disclosed. The method includes reading LSB data of a source page, and storing the read LSB data in a second register of a page buffer, transmitting the data stored in the second register to a first register coupled to a data inputting circuit, and storing the transmitted data in the first register, amending the data stored in the first register through the data inputting circuit, transmitting the amended data to the second register, and storing the transmitted data in the second register, and LSB-programming corresponding data to a target page in accordance with the data stored in the second register.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority from Korean Patent Application No.2006-106654, filed on Oct. 31, 2006 and Korean Patent Application No.2007-54383, filed on Jun. 4, 2007, the contents of which areincorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

The present invention relates to a multi-level cell copyback method in anon-volatile memory device.

In a common non-volatile memory device, one string is made up of aplurality of memory cells, and a memory cell array includes a pluralityof strings.

A common method of driving the memory cell operates in accordance withlevel of a threshold voltage having two states. Here, a first statecorresponding to one of a program area and an erase area means the levelof the threshold voltage in case that the level of the threshold voltageis higher than a given level, and a second state corresponding to theother area indicates the level of the threshold voltage in case that thelevel of the threshold voltage is smaller than the given level.

For example, a memory cell is programmed or erased in accordance withlevel of a threshold voltage having a first state and a second state,wherein the first state corresponds to a level of the threshold voltagesmaller than a reference voltage, i.e. 0V and the second statecorresponds to the level of the threshold voltage higher than 0V. Thismemory cell is referred to as a single level cell (hereinafter, referredto as “SLC”). Here, since the SLC considers only two states on the basisof the reference voltage, the SLC may store accurately data. However,the SLC is not good to process mass storage data.

To improve this demerit of the SLC, a multi-level cell (hereinafter,referred to as “MLC”) has been developed.

The MLC has the same structure as the SLC in physical view. However, theMLC has at least four threshold voltage levels in logical view. That is,the threshold voltage is divided as a program area and an erase areabased on a reference voltage like the SLC, but at least three thresholdvoltage levels exist in the program area unlike the SLC. As a result,since the MLC drives at least four states with the same physicalstructure as the SLC, the MLC has excellent data processing capacitycompared to the SLC.

In other words, the non-volatile memory device having the MLC uses amethod of storing two data in one memory cell. As a result, a method ofdriving the non-volatile memory device in accordance with thresholdvoltage distribution and bias condition of the MLC is complicatedcompared to a method of driving the non-volatile memory device havingthe SLC.

A copyback operation of the method means an operation of transferringdata stored in a first memory cell into a second memory cell havingdifferent address from the first memory cell.

If algorithm for the copyback operation is existed, data in a memorycell are sensed by using a page buffer, and then are read to a device inoutside of a chip. Subsequently, the read data are stored in the device,and then the stored data should be again stored in a memory cell.

In addition, in case that the non-volatile memory device does not haveextra storage section except a page buffer in the chip, the stored dataare read, and then the read data should be again stored in the device inoutside of the chip. Accordingly, the non-volatile memory device havingthe MLC should use algorithm for the copyback operation different fromalgorithm in the non-volatile memory device having the SLC.

On the other hand, in case that data of a source page are damaged duringthe copyback operation, the damaged data should be amended.

Additionally, an LSB program operation and an MSB program operation areperformed in accordance with the copyback operation of the MLC. Here,since a verifying operation is performed about each of the programoperations, unified verifying operation has been required.

SUMMARY OF THE INVENTION

It is a feature of the present invention to provide a multi-level cellcopyback method in a non-volatile memory device for amending damageddata of a source page.

It is another feature of the present invention to provide a multi-levelcell copyback method in a non-volatile memory device for performingunified verifying operation about an LSB program operation and an MSBprogram operation.

A multi-level cell copyback program method in a non-volatile memorydevice according to one example embodiment of the present inventionincludes reading LSB data of a source page, and storing the read LSBdata in a second register of a page buffer; transmitting the data storedin the second register to a first register coupled to a data inputtingcircuit, and storing the transmitted data in the first register;amending the data stored in the first register through the datainputting circuit; transmitting the amended data to the second register;and storing the transmitted data in the second register, andLSB-programming corresponding data to a target page in accordance withthe data stored in the second register.

A multi-level cell copyback program method in a non-volatile memorydevice according to another example embodiment of the present inventionincludes performing a multi-level cell copyback program operation;performing selectively a first verifying operation, a second verifyingoperation or a third verifying operation in accordance with data storedin an MSB node of the first register or data stored in an LSB node ofthe second register, wherein the first verifying operation is based on afirst verifying voltage, the second verifying operation is based on asecond verifying voltage higher than the first verifying voltage, andthe third verifying operation is based on a third verifying voltagehigher than the second verifying voltage; and performing repeatedly thecopyback program operation in accordance with the verifying operation.

As described above, a non-volatile memory device may perform amulti-level cell copyback operation for amending damaged data of asource page. In addition, the non-volatile memory device performsunified verifying operation about an LSB program operation and an MSBprogram operation, and so area of an ROM storing algorithm related tothe verifying operation and area of a control circuit may be reduced.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other features and advantages of the present inventionwill become readily apparent by reference to the following detaileddescription when considered in conjunction with the accompanyingdrawings wherein:

FIG. 1 is a view illustrating a circuitry of a non-volatile memorydevice according to one example embodiment of the present invention;

FIG. 2 is a flowchart illustrating an LSB copyback method of a copybackprogram method according to one example embodiment of the presentinvention;

FIG. 3 is a flowchart illustrating a verifying operation according toone example embodiment of the present invention;

FIGS. 4A-1 to 4A-3 illustrate the first verifying operation based on thefirst verifying voltage PV1;

FIGS. 4B-1 to 4B-3 illustrate the second verifying operation based onthe second verifying voltage PV2;

FIGS. 4C-1 to 4C-3 illustrate the third verifying operation based on thethird verifying voltage PV3;

FIG. 5 is a flowchart illustrating an MSB page copyback method of acopyback program method according to one example embodiment of thepresent invention;

FIG. 6 is a flowchart illustrating a verifying operation according tostill another example embodiment of the present invention; and

FIG. 7 is a view illustrating change of threshold voltage distributionof multi-level cells in accordance with a copyback process.

DESCRIPTION OF SPECIFIC EMBODIMENTS

Hereinafter, the preferred embodiments of the present invention will beexplained in more detail with reference to the accompanying drawings.

FIG. 1 is a view illustrating a circuitry of a non-volatile memorydevice according to one example embodiment of the present invention.

The non-volatile memory device of the present embodiment includes amemory cell array and a page buffer.

The page buffer has a bit line selecting circuit 100 for couplingselectively a bit line BLe or BLo to a sensing node SO, a first register110 and a second register 120 for storing specific data, a datacomparing circuit 130 for comparing data stored in the first register110 with data stored in the second register 120 and transmitting givendata to the sensing node SO in accordance with the comparing result, anda data inputting circuit 140.

The bit line selecting circuit 100 includes a plurality of N-MOStransistors N102 to N108.

The N-MOS transistor N102 is coupled between the even bit line BLe and abias voltage VIRPWR, and is turned on in response to an even dischargesignal DISCHe. Here, in case that the N-MOS transistor N102 is turnedon, the bias voltage VIRPWR is applied to the even bit line BLe.

The N-MOS transistor N104 is coupled between the odd bit line BLo andthe bias voltage VIRPWR, and is turned on an odd discharge signalDISCHo. Here, in case that the N-MOS transistor N104 is turned on, thebias voltage VIRPWR is applied to the odd bit line BLo.

The N-MOS transistor N106 is coupled between the even bit line BLe andthe sensing node SO, and is turned on in response to an even bit lineselecting signal SELBLe. Here, in case that the N-MOS transistor N106 isturned on, the even bit line BLe is coupled to the sensing node SO.

The N-MOS transistor N108 is coupled between the odd bit line BLo andthe sensing node SO, and is turned on in response to an odd bit lineselecting signal SELBLo. Here, in case that the N-MOS transistor N108 isturned on, the odd bit line BLo is coupled to the sensing node SO.

The first register 110 includes a latch 112 having two inverters IV114and IV116, an N-MOS transistor N112 coupled to a first node MSB of thelatch 112, an N-MOS transistor N114 coupled to a second node MSB_N ofthe latch 112, an inverter IV112, and a P-MOS transistor P112 tuned onin accordance with a voltage level of the second node MSB_N, therebyoutputting a voltage Vdd having high level to a portion corresponding toan MSB verifying signal MSBVER_N.

In addition, the first register 110 further includes an N-MOS transistorN116 coupled between a node N4 and a ground, wherein the node N4 isdisposed between the N-MOS transistor N112 and the N-MOS transistorN114.

The N-MOS transistor N112 is coupled between the first node MSB and thenode N4, and is turned on in response to an MSB reset signal MSBRST.

The N-MOS transistor N114 is coupled between the second node MSB_N andthe node N4, and is turned on in accordance with an MSB set signalMSBSET.

The N-MOS transistor N116 is coupled between the node N4 and the ground,and is turned on in accordance with a voltage level of the sensing nodeSO, thereby providing a ground voltage to the node N4.

The second register 120 includes a latch 122 having two inverters IV124and IV126, an N-MOS transistor N122 coupled to a first node LSB of thelatch 122, an N-MOS transistor N124 coupled to a second node LSB_N ofthe latch 122, an inverter IV122, and a P-MOS transistor P122 turned onin accordance with a voltage level of the second node LSB_N, therebyoutputting the voltage Vdd having high level to a portion correspondingto a verifying signal LSBVER_N. Additionally, the second register 120further includes an N-MOS transistor N126 coupled between a node N9 andthe ground, wherein the node N9 is disposed between the N-MOS transistorN122 and the N-MOS transistor N124.

The N-MOS transistor N122 is coupled between the first node LSB and thenode N9, and is turned on in response to an LSB reset signal LSBRST.

The N-MOS transistor N124 is coupled between the second node LSB_N andthe node N9, and is turned on in response to a least significant bit(LSB) set signal LSBSET.

The N-MOS transistor N126 is coupled between the node N9 and the ground,and is turned on in accordance with the voltage level of the sensingnode SO, thereby providing the ground voltage to the sensing node N9.

The data comparing circuit 130 provides logical product data of datastored in the first register 110 and data stored in the second register120 to the sensing node SO in response to a most significant bit (MSB)program signal MSBPROG, and includes a first comparing circuit 132 and asecond comparing circuit 134.

The first comparing circuit 132 has N-MOS transistors N132 and N136.

The N-MOS transistors N132 and N136 are coupled in serial between thesensing node SO and a node N7.

The N-MOS transistor N132 is turned on in response to the MSB programsignal MSBPROG.

The N-MOS transistor N136 is turned on in response to a voltage of anode N12 so that the sensing node SO is coupled to the node N7 or isdisconnected from the node N7.

The second comparing circuit 134 includes N-MOS transistors N134 andN138.

The N-MOS transistors N134 and N138 are coupled in serial between thesensing node SO and the node N12.

The N-MOS transistor N134 is turned on in response to the MSB programsignal MSBPROG.

The N-MOS transistor N138 is turned on in response to a voltage of thenode N7 so that the sensing node SO is coupled to the node N12 or isdisconnected from the node N12.

In case that the data comparing circuit 130 is operated, a transistorP150 for precharging is turned on during a given time, therebyprecharging the sensing node SO to high level. Then, the MSB programsignal MSBPROG is applied with high level. In this case, the voltagelevel of the sensing node SO is varied in accordance with voltage levelsof the nodes N7 and N12. State of the voltage level is shown in belowtable.

Operation of the Voltage of the Voltage of the Voltage of the comparingcircuit node N7 node N12 sensing node SO N136 and N138 High High Highare turned on N138 is turned on High Low Low N136 is turned on Low HighLow N136 and N138 Low Low Maintaining a are turned off precharge level

Turn-on of the N-MOS transistors N136 and N138 is determined inaccordance with voltage levels of the nodes N7 and N12 as shown in theabove table. In addition, it is determined whether or not voltage ofeach of the nodes N7 and N12 affects to the sensing node SO inaccordance with turn-on of the N-MOS transistors N136 and N138.

In case that every voltage of the nodes N7 and N12 has low level, thetransistors N136 and N138 are turned off. As a result, transmission ofthe logical product data is stopped. In this case, the voltage of thesensing node SO is determined in accordance with the precharge level.

The data inputting circuit 140 includes N-MOS transistors N142 and N144.

The N-MOS transistor N142 is coupled between the first node MSB and aninput/output terminal YA, and is turned on in response to a data inputsignal DATALOAD.

In case that the N-MOS transistor N142 is turned on, data of theinput/output terminal YA are transmitted to the first node MSB in thefirst register 110.

The N-MOS transistor N144 is coupled between the second node MSB_N andthe input/output terminal YA, and is turned on in response to an inversedata input signal DATALOAD_N.

In case that the N-MOS transistor N144 is turned on, the data of theinput/output terminal YA are provided to the second node MSB_N.Accordingly, in case that the data input signal DATALOAD having highlevel is transmitted under the condition that the input/output terminalYA is coupled to the ground, the N-MOS transistor N142 is turned on. Asa result, the first node MSB has low level. In case that the inversedata input signal DATALOAD_N having high level is applied to the N-MOStransistor N144, the N-MOS transistor N144 is turned on. As a result,the second node MSB_N has low level, and so data are inputted.

On the other hand, a transistor N156 for data transmission is coupledbetween the node N7 and the sensing node SO, and a transistor N158 fordata transmission is coupled between the node N12 and the sensing nodeSO.

The N-MOS transistor N156 is coupled between the sensing node SO and thenode N7, and is turned on in response to a data transmitting signalDATTRAN. Accordingly, in case that the N-MOS transistor N156 is turnedon, data of the node N7 are transmitted to the sensing node SO.

The N-MOS transistor N158 is coupled between the sensing node SO and thenode N12, and is turned on in response to a least significant bit (LSB)program signal LSBPROG. Accordingly, in case that the N-MOS transistorN158 is turned on, data of the node N12 are transmitted to the sensingnode SO.

The P-MOS transistor P150 for precharging is coupled between the sourcevoltage Vdd and the sensing node SO, and is turned on in response to aprecharge signal PRECH_N having low level. In case that the P-MOStransistor P150 is turned on, the source voltage Vdd is applied to thesensing node SO. As a result, the sensing node SO is precharged to levelof the source voltage Vdd.

The non-volatile memory device includes transistors N152, N154 and N160for transmitting data provided to the nodes N7 and N12 to an outsideterminal.

An MSB pass device N152 is embodied with an N-MOS transistor, is coupledbetween the node N7 and a node N8, and operates in response to an MSBpass signal MSBPASS.

An LSB pass device N154 is embodied with an N-MOS transistor, is coupledbetween the node N12 and the node N8, and operates in response to an LSBpass signal LSBPASS.

The data pass device N160 is embodied with an N-MOS transistor, andtransmits a voltage applied to the node N8 to an inverter IV150 inresponse to a pass signal PASS.

Hereinafter, a multi-level cell copyback program method used in thenon-volatile memory device will be described in detail.

FIG. 2 is a flowchart illustrating an LSB copyback method of a copybackprogram method according to one example embodiment of the presentinvention.

In step T02, the first node (hereinafter, referred to as “MSB node”) ofthe first register 110 and the first node (hereinafter, referred to as“LSB node”) of the second register 120 are initialized.

To initialize the nodes, the precharge signal PRECH_N having low levelis transmitted to the transistor P150, thereby turning on the transistorP150. As a result, the voltage having high level is applied to thesensing node SO. In addition, the MSB reset signal MSBRST and the LSBset signal LSBSET having high level are transmitted, and so thetransistors N112 and N124 are turned on. Accordingly, the MSB node isinitialized to data having low level, and the LSB node is initialized todata having high level.

Next, an LSB data of a source page which are an object of copyback areread, and then are stored in the second register 120 of the page buffer.

In step T04, data of a specific cell are read on the basis of a firstread voltage RV1 of FIG. 7, and then are stored in the LSB node. Here,FIG. 7 is a view illustrating change of threshold voltage distributionof multi-level cells in accordance with a copyback process.

To perform the above process, the process uses a method in which thevoltage level of the sensing node SO is varied in accordance with aresult as to whether or not a corresponding cell is a programmed cell.

That is, in the method, the voltage level of the sensing node SO hashigh level in case that the corresponding cell is a programmed cell, andhas low level in case that the corresponding cell is an erased cell.Here, turn-on of the N-MOS transistor N126 of the second register 120 isdetermined in accordance with the voltage level of the sensing node SO.In this case, the LSB reset signal LSBRST is provided to the transistorN122 with high level, and so the N-MOS transistor N122 is turned on.Accordingly, in case that a corresponding cell is programmed to avoltage more than the first read voltage RV1 (‘10’, ‘00’ and ‘01’ inFIG. 7), the ground voltage is applied to the LSB node. As a result,data having low level are stored in the LSB node. However, in case thatthe corresponding cell is erased (‘11’ in FIG. 7), the data having highlevel in the above initialization step are maintained as it is.

In step T06, data of a specific cell are read on the basis of a thirdread voltage RV3 in FIG. 7, and then are stored in the LSB node.

The read operation is similar to that in the step T04. However, the LSBset signal LSBSET having high level is transmitted to the N-MOStransistor N124 unlike the step T04, and so the N-MOS transistor N124 isturned on. Accordingly, in case that a corresponding cell is programmedto a voltage more than the third read voltage RV3 (‘01’ in FIG. 7), datahaving high level are stored in the LSB node. However, in case that thecell is erased (‘11’, ‘10’ and ‘00’ in FIG. 7), the data stored in theprior step are maintained.

In short, in case that a threshold voltage of the cell is smaller thanthe first read voltage RV1 and is higher than the third read voltageRV3, i.e. ‘11’ and ‘01’, the data having high level are stored in theLSB node. However, in case that a threshold voltage of the cell ishigher than the first read voltage RV1 and is smaller than the thirdread voltage RV3, i.e. ‘10’ and ‘00’, the data having low level arestored in the LSB node.

In another example embodiment of the present invention, the LSB copybackmethod may further includes a step of transmitting new data to the MSBnode. For example, the method may include the step in case that data ofa source page related to a copyback operation are to be amended. Toperform the step, data stored in a specific register are transmitted tothe register coupled to the data inputting circuit 140, and then thedata are amended by using the data inputting circuit 140.

Firstly, in step T08, the data stored in the second register 120 aretransmitted to the first register 110 and then the transmitted data arestored in the first register 110. To perform the step T08, the sensingnode SO is precharged to high level by using the precharge signalPRECH_N, and the LSB program signal LSBPROG and the MSB set signalMSBSET having high level are transmitted to the transistors N158 andN114. Accordingly, in case that the data having low level are stored inthe LSB node, i.e. ‘10’ and ‘00’, data having high level are stored inthe MSB node. However, in case that the data having high level arestored in the LSB node, i.e. ‘11’ and ‘01’, the data having low levelstored in the MSB node are maintained.

In step T10, new data are provided to the MSB node. To perform the stepT10, the data input signal DATALOAD or DATALOAD_N having high level isprovided to the data inputting circuit 140, thereby amending a voltagelevel of the MSB node. That is, a level of the data stored in the MSBnode may be converted through the above mentioned step.

In step T12, the data stored in the MSB node are checked. For instance,in case that an LSB program is not needed for data stored in whole ofthe page, i.e. ‘11’ and ‘10’ in FIG. 7, the LSB program is not performedabout a corresponding page. The checked result is determined inaccordance with a voltage level of the MSB verifying signal MSBVER_N.Since the MSB node maintains low level in case that the LSB program isnot needed, i.e. ‘11’ and ‘01’, in FIG. 7, a signal having high level isapplied to a gate of the P-MOS transistor P112. Accordingly, the MSBverifying signal MSBVER_N maintains floating state, and the LSB programmay not be performed.

In step T14, the second register 120 is initialized before data storedin the first register 110 are again transmitted to the second register120.

To perform the step T14, the precharge signal PRECH_N having low levelis transmitted to the transistor P150, thereby turning on the transistorP150. As a result, the voltage having high level is applied to thesensing node SO. In addition, the LSB set signal LSBSET is provided tothe N-MOS transistor N124, thereby turning on the N-MOS transistor N124.As a result, the LSB node is initialized to data having high level.

In step T16, the data stored in the first register 110 are transmittedto the second register 120, and the transmitted data are stored in thesecond register 120.

To perform the step T16, the sensing node SO is precharged to high levelby using the precharge signal PRECH_N, and the data transmitting signalDATTRAN and the LSB reset signal LSBRST are transmitted to thetransistor N156 and the transistor N122. Accordingly, in case that thedata having low level are stored in the MSB node, i.e. ‘11’ and ‘01’,the data having low level are stored in the LSB node. However, in casethat the data having high level are stored in the MSB node, i.e. ‘10’and ‘00’, the data having high level stored in the LSB node aremaintained.

In step T18, the data stored in the LSB node are checked.

For example, in case that an LSB program is not needed for data storedin whole of the page, i.e. ‘11’ and ‘10’ in FIG. 7, the LSB program isnot performed about a corresponding page. The checked result isdetermined in accordance with a voltage level of the LSB verifyingsignal LSBVER_N. Since the LSB node maintains low level in case that theLSB program is not needed, i.e. ‘11’ and ‘01’ in FIG. 7, the signalhaving high level is applied to a gate of the P-MOS transistor P112.Accordingly, the LSB verifying signal LSBVER_N maintains floating state,and the LSB program may not be performed about the whole of pages.

In step T20, data stored in the MSB node are initialized. Here, since aLSB program and a verifying operation of object page are performed inaccordance with the data stored in the LSB node, the initialization doesnot affect to the LSB program. To perform the step T20, the prechargesignal PRECH_N and the MSB reset signal MSBRST having high level aretransmitted to the transistor P150 and the transistor N112, and so datahaving low level are stored in the MSB node.

In step T22, a program operation is performed in accordance with thedata stored in the LSB node. On the other hand, in case that it isdiscriminated that the LSB program is not needed through the step T12 orT18, the program operation may be omitted.

To perform a copyback program operation, the bit line is precharged tohigh level, and data to be programmed are provided to the sensing nodeSO. In this case, the MSB program signal MSBPROG having high level istransmitted to the data comparing circuit 130, and so data of the LSBnode are provided to the sensing node SO.

Particularly, since the MSB node is initialized in the prior step, datahaving high level are transmitted to the node N7. In case of the LSBnode in the step T16, data having high level are stored in a cell to beprogrammed, and data having low level are stored in a cell to be erased.Accordingly, the data having low level are stored in the node N12 incase of the cell to be programmed, and the data having high level arestored in the cell to be erased. Hence, data having high level aretransmitted to the sensing node SO in accordance with the operation ofthe data inputting circuit 140 in case that data having high level arestored in the node N12, i.e. in case of the cell to be erased, and datahaving low level are provided to the sensing node SO in case that thedata having low level are stored in the node N12, i.e. in case of thecell to be programmed. Accordingly, the program operation is performedabout only the cell to be programmed.

In step T24, a verifying operation as to whether or not the LSB programis normally performed is performed.

Hereinafter, the verifying operation will be described in detail withreference to accompanying drawings.

FIG. 3 is a flowchart illustrating a verifying operation according toone example embodiment of the present invention.

In step V1, the check result about the data stored in the MSB node (thestep T12) and data stored in the LSB node (the step T18) are inputted.

A first verifying operation based on a first verifying voltage, a secondverifying operation based on a second verifying voltage higher than thefirst verifying voltage or a third verifying operation based on a thirdverifying voltage higher than the second verifying voltage isselectively performed in accordance with the inputted check result.

In step V2, it is discriminated whether or not the every data stored inthe MSB node corresponds to data to be erased, i.e. the MSB node has lowlevel, and whether or not every data store din the LSB node correspondsto data to be erased, i.e. the LSB node has low level.

In step V3, in case that the data stored in the MSB node and data storedin the LSB node correspond to data to be erased, the program operationis finished without performing the LSB program.

In step V4, in case that data stored in the MSB node or the data storedin the LSB node does not correspond to data to be erased, it isdiscriminated whether or not every data stored in the MSB nodecorrespond to data to be erased.

In step V5, in case that every data stored in the MSB node is not datato be erased, the second verifying operation is performed on the basisof the second verifying voltage PV2 in FIG. 7. However, this secondverifying operation is verifying operation about the MSB program. Hence,in case that a verifying operation is performed about an LSB copybackprogram, the step V5 is not performed but the step V6 is directlyperformed because the MSB node is initialized to 0 in the step T20.

In step V6, it is discriminated whether or not every data stored in theLSB node is data to be erased.

In case that every data stored in the LSB node is not data to be erased,the verifying operation is performed on the basis of the first verifyingvoltage PV1 or the third verifying voltage PV3 in FIG. 7. Here, theverifying operation is varied in accordance with discrimination resultas to whether the present program operation is an LSB program or an MSBprogram. To perform the verifying operation, information as to whetheror not a copyback program about a source page is the LSB program isinputted from an outside device through addressing in step V9, whereinthe source page is object of the copyback.

In step V8, it is discriminated through the inputted information whetherthe copyback program of the source page is the LSB program or the MSBprogram.

In step V11, in case that the copyback program is the LSB program, thefirst verifying operation is performed on the basis of the firstverifying voltage PV1.

In step V10, in case that the copyback program is the MSB program, thethird verifying operation is performed on the basis of the thirdverifying voltage PV3.

In the present step, since the LSB copyback program is being performed,only the first verifying operation is performed.

Hereinafter, the verifying operation will be described in detail withreference to accompanying drawing.

FIG. 4A-1 is a view illustrating the first verifying operation based onthe first verifying voltage PV1, and FIG. 4B-1 is a view illustratingthe second verifying operation based on the second verifying voltagePV2. FIG. 4C-1 is a view illustrating the third verifying operationbased on the third verifying voltage PV3. Here, the second verifyingvoltage PV2 is higher than the first verifying voltage PV1, and thethird verifying voltage PV3 is higher than the second verifying voltagePV2.

Hereinafter, the first verifying operation will be described in detailwith reference to FIG. 4A-2 and FIG. 4A-3.

In FIG. 4A-2 and FIG. 4A-3, in case of the LSB program operation,program of a corresponding cell is determined in accordance with levelof the data stored in the LSB node. Here, in case that the correspondingcell is a cell to be programmed, data having high level are stored.However, in case that the corresponding cell is a cell to be erased,data having low level are stored.

The program operation is performed, and then the verifying operationsensing a threshold voltage of the corresponding cell is performed. Thisuses the fact that the voltage level of the sensing node SO is varied inaccordance with a result as to whether or not the corresponding cell isprogrammed.

On the other hand, the LSB reset signal LSBRST having high level istransmitted to the transistor N122. Hence, in case that the sensing nodeSO has high level according as the corresponding cell is programmed, thedata having high level stored in the LSB node are converted into datahaving low level. However, in case that the cell is sensed as an erasedcell according as a threshold voltage of the cell is not increased up toa program level though the program operation is performed, the datahaving high level stored in the LSB node are maintained as it is.

In case that every cell to be programmed is programmed by repeating theabove process, data having low level are stored in the LSB node.

In case that the cell is not a cell to be programmed, the data havinglow level are stored in the LSB node at first. Accordingly, in case thatthe verifying operation about program of a corresponding page isfinished irrespective of a fact as to whether or not a specific cell isa cell to be programmed, data having low level are stored in the LSBnode. As a result, the LSB verifying signal LSBVER_N having a floatingstate is outputted.

The verifying operation about the LSB program is performed through theabove process, and is repeatedly performed until the LSB program isfinished.

FIG. 5 is a flowchart illustrating an MSB page copyback method of acopyback program method according to one example embodiment of thepresent invention.

In step S02, the MSB node of the first register 110 and the LSB node ofthe second register 120 are initialized.

To performing the initialization, the precharge signal PRECH_N havinglow level is transmitted to the transistor P150, thereby turning on thetransistor P150. As a result, the voltage having high level is appliedto the sensing node SO. In addition, the MSB reset signal MSBRST and theLSB set signal LSBSET having high level are transmitted to the N-MOStransistor N112 and the N-MOS transistor N124, thereby turning on theN-MOS transistors N112 and N124. As a result, the MSB node isinitialized to data having low level, and the LSB node is initialized todata having high level.

Subsequently, data stored in the source page which is object of thecopyback are read and stored. Here, since the present step is a MSBcopyback program step, the data stored in the MSB page are read. Toperform the above read operation, data of a specific cell are read onthe basis of a second read voltage RV2 in FIG. 7 and then are stored inthe LSB node in step S04. This uses the fact that the voltage level ofthe sensing node SO is varied in accordance with a result as to whetheror not the corresponding cell is programmed. That is, this uses the factthat the voltage level of the sensing node SO has high level in casethat the corresponding cell is programmed and has low level in case thatthe corresponding cell is erased. Accordingly, turn-on of the N-MOStransistor N126 in the second register 120 is determined in accordancewith the voltage level of the sensing node SO. In this case, the N-MOStransistor N122 is turned on by transmitting the LSB reset signal LSBRSThaving high level. Hence, a ground voltage is applied to the LSB node incase that a corresponding cell is programmed to a voltage more than thesecond read voltage, i.e. ‘00’ and ‘01’ in FIG. 7, and so data havinglow level are stored in the LSB node. However, in case that the cell iserased, i.e. ‘11’ and ‘10’ in FIG. 7, data having high level initializedin the above step are maintained as it is.

In one example embodiment of the present invention, the MSB pagecopyback method may further include a step of providing new data to theMSB node. For example, the method may include the step in case that dataof a source page related to the copyback operation are to be amended. Toperform the step, data stored in a specific register are transmitted tothe register coupled to the data inputting circuit 140, and then thedata are amended by using the data inputting circuit 140.

Firstly, in step S06, the data stored in the second register 120 aretransmitted to the first register 110 and then the transmitted data arestored in the first register 110. To perform the step S06, the sensingnode SO is precharged to high level by using the precharge signalPRECH_N, and the LSB program signal LSBPROG and the MSB set signalMSBSET having high level are transmitted to the transistors N158 andN114. Accordingly, in case that the data having low level are stored inthe LSB node, i.e. ‘00’ and ‘01’, data having high level are stored inthe MSB node. However, in case that the data having high level arestored in the LSB node, i.e. ‘11’ and ‘10’, the data having low levelstored in the MSB node are maintained.

In step S08, new data are provided to the MSB node. To perform the stepS08, the data input signal DATALOAD or DATALOAD_N having high level isprovided to the data inputting circuit 140, thereby amending a voltagelevel of the MSB node. That is, a level of the data stored in the MSBnode may be converted through the above mentioned step.

In step S10, the data stored in the MSB node are checked. For instance,in case that an MSB program is not needed for data stored in whole ofthe page, i.e. ‘11’ and ‘10’ in FIG. 7, the MSB program may be notperformed about a corresponding page. The checked result is determinedin accordance with a voltage level of the MSB verifying signal MSBVER_N.Since the MSB node maintains low level in case that the MSB program isnot needed, i.e. ‘11’ and ‘01’ in FIG. 7, a signal having high level isapplied to a gate of the P-MOS transistor P112. Accordingly, the MSBverifying signal MSBVER_N maintains floating state, and the MSB programmay not be performed about whole of the page.

In step S12, the second register 120 is initialized before data storedin the first register 110 are again transmitted to the second register120.

To perform the step S12, the precharge signal PRECH_N having low levelis transmitted to the transistor P150, thereby turning on the transistorP150. As a result, the voltage having high level is applied to thesensing node SO. In addition, the LSB set signal LSBSET is provided tothe N-MOS transistor N124, thereby turning on the N-MOS transistor N124.As a result, the LSB node is initialized to data having high level.

In step S14, state of a target page programmed by the LSB copybackprogram operation is read. In other words, it is discriminated whetheror not an LSB program is performed about a corresponding cell of thetarget cell. Here, data of a specific cell are read on the basis of thefirst read voltage RV1 and then stored in the LSB node.

To perform the above process, the process uses the fact that the voltagelevel of the sensing node SO is varied in accordance with a result as towhether or not a corresponding cell is a LSB programmed cell.

That is, the process uses the fact that the voltage level of the sensingnode SO has high level in case that the corresponding cell is the LSBprogrammed cell, and has low level in case that the corresponding cellis an erased cell. Here, turn-on of the N-MOS transistor N126 of thesecond register 120 is determined in accordance with the voltage levelof the sensing node SO. In this case, the LSB reset signal LSBRST isapplied to the transistor N122 with high level, and the N-MOS transistorN122 is turned on. Accordingly, in case that a corresponding cell isLSB-programmed (‘10’ and ‘00’ in FIG. 7), the ground voltage is appliedto the LSB node. As a result, data having low level are stored in theLSB node. However, in case that the corresponding cell is notLSB-programmed (‘11’ and ‘01’ in FIG. 7), the data having high levelinitialized in the above step are maintained as it is.

In step S16, the data stored in the first register 110 are transmittedto the second register 120, and are stored in the second register 120.That is, the data stored in the second register 120 is reset.

To perform the step S16, the sensing node SO is precharged to high levelby using the precharge signal PRECH_N, and the data transmitting signalDATTRAN and the LSB reset signal LSBRST are transmitted to thetransistor N156 and the transistor N122. Accordingly, in case that datahaving low level are stored in the MSB node, i.e. ‘11’ and ‘10’, datahaving low level are stored in the LSB node. In other words, the datahaving low level are stored in the LSB node irrespective of the LSBcopyback program, and thus the MSB copyback is not performed about acorresponding cell.

On the other hand, in case that data having high level are stored in theMSB node, i.e. ‘00’ and ‘01’, the data stored in the LSB node aremaintained as it is. Hence, the data having high level are maintained incase that the data stored in the LSB node has high level, i.e. ‘01’, anddata having low level is maintained in case that the data stored in theLSB node has low level, i.e. ‘00’.

A cell (‘01’) where only a most significant bit is to be programmedwithout programming a least significant bit and a cell (‘00’) where aleast significant bit and a most significant bit are to be programmedmay be separated through the above operation.

However, since data having high level are stored in the LSB node and theMSB node in the present condition in case of ‘01’ data, the voltagelevel of the sensing node SO is not converted to low level when the MSBprogram operation is performed by using the data comparing circuit 130.As a result, the MSB program is not performed, and so extra MSB dataconversion process is performed in step S18.

The sensing node SO is precharged to high level for the data conversionprocess, and data of the nodes N7 and N12 are compared by transmittingthe MSB program signal MSBPROG to the data comparing circuit 130.

In case that data having high level are stored in the nodes N7 and N12in accordance with operation of the data comparing circuit 130, i.e. theLSB node and the MSB node have low level (‘11’ and ‘10’), data havinghigh level are transmitted to the sensing node SO. In case that datahaving low level are stored in the node N7 or the node N12, i.e. the LSBnode and the MSB node have low level and high level or the LSB node andthe MSB node have high level and low level (‘00’), data having low levelare provided to the sensing node SO. In case that data having low levelare stored in the nodes N7 and N12, i.e. each of the LSB node and theMSB node has high level (‘01’), the data comparing circuit 130 is notoperated. Hence, the precharged voltage level is maintained as it is. Inthis case, the MSB program is performed about only the cell ‘00’. Here,the MSB program should be programmed about the cell ‘01’, but is notperformed since the sensing node SO maintains high level in the presentstep.

To amend this phenomenon, the MSB reset signal MSBRST is transmitted tothe first register 110. Accordingly, data stored in the MSB node areconverted into data having low level only in case that the sensing nodeSO maintains high level, i.e. ‘11’, ‘10’ and ‘01’. Here, since datahaving low level are stored in the MSB node in case of ‘11’ and ‘10’,the data are not converted.

However, since data having high level are stored in the MSB node in caseof ‘01’, the data having high level are converted into data having lowlevel. This is for performing data conversion about only ‘01’ data. As aresult, in case of ‘11’ and ‘10’, data having low level are stored ineach of the LSB node and the MSB node through the above process. In caseof ‘01’, data having high level and data having low level are stored inthe LSB node and the MSB node, respectively. In case of ‘00’, datahaving low level and data having high level are stored in the LSB nodeand the MSB node, respectively.

In step S20, a program operation is performed in accordance with thedata set in the above process. However, in case that it is discriminatedthat the MSB program does not have to be performed in the above stepS10, the MSB program operation may be omitted.

On the other hand, the bit line is precharged to high level for thecopyback program operation, and data to be programmed are transmitted tothe sensing node SO. In this case, the MSB program signal MSBPROG havinghigh level is provided to the data comparing circuit 130, and so data ofthe LSB node and the MSB node are transmitted to the sensing node SO.

In case that data having high level are stored in the nodes N7 and N12in accordance with operation of the data comparing circuit 130, i.e.‘11’ and ‘10’, data having high level are transmitted to the sensingnode SO. In case that data having low level are stored in the node N7 orthe node N12, i.e. ‘00’ and ‘01’, data having low level are provided tothe sensing node SO. Accordingly, the program operation is performedabout only a cell corresponding to ‘00’ and ‘01’.

In step S22, a verifying operation about the MSB program is performed.

Hereinafter, the verifying operation will be described in detail withreference to drawing FIG. 3.

The verifying operation in FIG. 3 may be applied to the verifyingoperation about the LSB program and the verifying operation about theMSB program.

In step V1, the check result about the data stored in the MSB node (thestep T12) are inputted.

In step V2, it is discriminated whether or not the every data stored inthe MSB node corresponds to data to be erased, i.e. the MSB node has lowlevel, and whether or not every data store din the LSB node correspondsto data to be erased, i.e. the LSB node has low level.

In step V3, in case that the data stored in the MSB node and data storedin the LSB node correspond to data to be erased, the program operationis finished without performing the MSB program.

In step V4, in case that data stored in the MSB node or the data storedin the LSB node does not correspond to data to be erased, it isdiscriminated whether or not every data stored in the MSB nodecorresponds to data to be erased.

In step V5, in case that every data stored in the MSB node is not datato be erased, the second verifying operation is performed on the basisof the second verifying voltage PV2 in FIG. 7.

Hereinafter, the second verifying operation will be described in detailwith reference to FIGS. 4B-1 to 4B-3.

In case of the MSB program operation, a voltage level and the sensingnode SO and program of a corresponding cell are determined in accordancewith level of the data stored in the MSB node and the LSB node. Here, incase that the corresponding cell is a cell to be programmed, first dataare stored in the LSB node and second data opposed to the first data arestored in the MSB node. As a result, data having low level aretransmitted to the sensing node SO. However, in case that thecorresponding cell is a cell to be erased, data having high level areprovided to the sensing node SO.

The program operation is performed, and then the verifying operationsensing a threshold voltage of the corresponding cell is performed. Thisuses the fact that the voltage level of the sensing node SO is varied inaccordance with a result as to whether or not the corresponding cell isprogrammed.

On the other hand, the MSB reset signal MSBRST having high level istransmitted to the transistor N112. Hence, in case that the sensing nodeSO has high level according as the corresponding cell is programmed, thedata having high level stored in the MSB node is converted into datahaving low level. However, in case that the cell is sensed as an erasedcell according as a threshold voltage of the cell is not increased up toa program level though the program operation is performed, the datahaving high level stored in the MSB node are maintained as it is.

In case that every cell to be programmed is programmed by repeating theabove process, data having low level are stored in the MSB node.

In case that the cell is not a cell to be programmed, the data havinglow level are stored in the MSB node at first. Accordingly, in case thatthe verifying operation about program of a corresponding page isfinished irrespective of a fact as to whether or not a specific cell isa cell to be programmed, the MSB node stores data having low level. As aresult, the MSB verifying signal MSBVER_N having a floating state isoutputted.

On the other hand, in case of ‘01’ data, the ‘01’ data correspond todata to be programmed because the sensing node SO has low level.However, since the data having low level are stored in the MSB node, thesecond verifying operation is not performed. Here, the third verifyingoperation is performed about the program of the data on the basis of thethird verifying voltage.

In step V6, it is discriminated whether or not every data stored in theLSB node is data to be erased.

In case that every data stored in the LSB node is not data to be erased,the verifying operation is performed on the basis of the first verifyingvoltage PV1 or the third verifying voltage PV3 in FIG. 7. Here, theverifying operation is varied in accordance with discrimination resultas to whether present program operation is an LSB program or an MSBprogram. To perform the verifying operation, information as to whetheror not a copyback program about a source page is the LSB program isinputted from an outside device through addressing in step V9, whereinthe source page is object of a copyback.

In step V8, it is discriminated through the inputted information whetherthe copyback program of the source page is the LSB program or the MSBprogram.

In step V10, in case that the copyback program corresponds to the MSBprogram in the present step, the third verifying operation is performedon the basis of the third verifying voltage PV3.

Hereinafter, the third verifying operation will be described in detailwith reference to FIGS. 4C-1 to 4C-3.

The third verifying operation is similar to the verifying operations inFIG. 4A-1 and FIG. 4B-1. However, the third verifying operation isperformed on the basis of the third verifying voltage PV3.

The third verifying operation is performed by transmitting the LSB resetsignal LSBRST having high level. Hence, in case that the sensing node SOhas high level according as the corresponding cell is programmed, thedata having high level stored in the LSB node is converted into datahaving low level. However, in case that the cell is sensed as an erasedcell according as a threshold voltage of the cell is not increased up toa program level though the program operation is performed, the datahaving high level stored in the LSB node are maintained as it is.

In case that every cell to be programmed is programmed by repeating theabove process, data having low level are stored in the LSB node.

In case that the cell is not a cell to be programmed, the data havinglow level are stored in the MSB node at first. Accordingly, in case thatthe verifying operation about program of a corresponding page isfinished irrespective of a fact as to whether or not a specific cell isa cell to be programmed, the LSB node stores data having low level. As aresult, the LSB verifying signal LSBVER_N having a floating state isoutputted.

The verifying operation about the LSB program is performed through theabove process. In addition, the program operation and the verifyingoperation is repeatedly performed until the LSB program is finished.

FIG. 6 is a flowchart illustrating a verifying operation according tostill another example embodiment of the present invention.

The verifying operation is similar to that in FIG. 3. However, a step ofdiscriminating whether or not the verifying operation about the LSBprogram is performed during the verifying operation about the MSBprogram is omitted during a given time.

That is, in case that ‘11’ data or ‘10’ data are MSB-programmed to ‘00’data, a step of discriminating whether or not the verifying operationabout the LSB program is performed is omitted during the given time. Asa result, a time required for the verifying operation may be reduced.

The verifying operation in FIG. 6 may be applied to the verifyingoperation about the LSB program and the verifying operation about theMSB program.

In step G1, the check result of the data stored in the MSB node (thestep T12 in FIG. 2) are input.

In step G2, a determination is made whether the data stored in the MSBnode and the LSB node corresponds to data to be erased, i.e., the MSBnode and the LSB node each have a low level.

In step G3, if the data stored in the MSB node and the LSB nodecorrespond to data to be erased, the program operation is finishedwithout performing the MSB program.

In step G4, if the data stored in the MSB node or the LSB node does notcorrespond to data to be erased, a determination is made whether thedata stored in the MSB node corresponds to data to be erased.

In step G5, if the data stored in the MSB node is not data to be erased,a second verifying operation is performed based on the second verifyingvoltage PV2 in FIG. 7.

Hereinafter, the second verifying operation will be described in detailwith reference to FIG. 4B.

In the MSB program operation, a voltage level of the sensing node SO andprogram of a corresponding cell are determined in accordance with alevel of the data stored in the MSB node and the LSB node. If thecorresponding cell is a cell to be programmed, first data are stored inthe LSB node and second data opposed to the first data are stored in theMSB node. As a result, data having a low level are transmitted to thesensing node SO. However, if the corresponding cell is a cell to beerased, data having a high level are provided to the sensing node SO.

The program operation is performed, and then the verifying operation forsensing a threshold voltage of the corresponding cell is performed. Thevoltage level of the sensing node SO is varied in accordance with aresult of whether the corresponding cell is programmed.

The MSB reset signal MSBRST having a high level is transmitted to thetransistor N112. If the sensing node SO has a high level when thecorresponding cell is programmed, data having a high level stored in theMSB node is converted into data having a low level. However, if the cellis sensed as an erased cell when a threshold voltage of the cell is notincreased up to a program level even though the program operation isperformed, data having a high level stored in the MSB node ismaintained.

In the event that every cell to be programmed is programmed by repeatingthe above process, data having a low level is stored in the MSB node.

If the cell is not to be programmed, data having a low level isinitially stored in the MSB node. If the verifying operation aboutprogram of a corresponding page is finished irrespective of whether aspecific cell is to be programmed, the MSB node stores data having a lowlevel. As a result, the MSB verifying signal MSBVER_N having a floatingstate is output.

Data ‘01’ corresponds to data to be programmed because the sensing nodeSO has a low level. However, since data having a low level is stored inthe MSB node, the second verifying operation is not performed. In thiscase, the third verifying operation is performed about the program ofthe data based on the third verifying voltage.

In step G8, a determination is made whether the data stored in the LSBnode is to be erased.

If the data stored in the LSB node is not to be erased, the verifyingoperation is performed based on the first verifying voltage PV1 or thethird verifying voltage PV3 in FIG. 7. The verifying operation is variedin accordance with the determination result of whether the presentprogram operation is an LSB program or an MSB program. To perform theverifying operation, information as to whether a copyback program abouta source page is the LSB program is input from an external devicethrough addressing in step G9, wherein the source page is an object of acopyback.

In step G10, a determination is made using the input information whetherthe copyback program of the source page is the LSB program or the MSBprogram.

In step G11, if the copyback program corresponds to the MSB program inthe present step, the third verifying operation is performed based onthe third verifying voltage PV3.

In step G12, if the copyback program is the LSB program, the firstverifying operation is performed based on the first verifying voltagePV1.

In step G13, the program operation is performed.

In step G7, a number of the omitting is preset as K.

A performance number of the verifying operation is counted in responseto repetition of the verifying operation in step G14 and it isdiscriminated whether or not the performance number is higher than K instep G6.

The step of discriminating whether or not the verifying operation aboutthe LSB program is performed is omitted until the performance number ishigher than K. However, in case that the performance number is higherthan K, the step of discriminating whether or not the verifyingoperation about the LSB program is performed is performed. Then, thefirst verifying operation or the third verifying operation is performed.

Any reference in this specification to “one embodiment,” “anembodiment,” “example embodiment,” etc., means that a particularfeature, structure, or characteristic described in connection with theembodiment is included in at least one embodiment of the invention. Theappearances of such phrases in various places in the specification arenot necessarily all referring to the same embodiment. Further, when aparticular feature, structure, or characteristic is described inconnection with any embodiment, it is submitted that it is within thepurview of one skilled in the art to affect such feature, structure, orcharacteristic in connection with other ones of the embodiments.

Although embodiments have been described with reference to a number ofillustrative embodiments thereof, it should be understood that numerousother modifications and embodiments can be devised by those skilled inthe art that will fall within the spirit and scope of the principles ofthis disclosure. More particularly, various variations and modificationsare possible in the component parts and/or arrangements of the subjectcombination arrangement within the scope of the disclosure, the drawingsand the appended claims. In addition to variations and modifications inthe component parts and/or arrangements, alternative uses will also beapparent to those skilled in the art.

1. A multi-level cell copyback program method in a non-volatile memorydevice, the method comprising: initializing a first register and asecond register of a page buffer; performing a first read operation of asource page based on a first read voltage to store data obtained by thefirst read operation on the second register; performing a second readoperation of the source page based on a third read voltage higher thanthe first read voltage to store data obtained by the second readoperation on the second register; performing a least significant bit(LSB) program operation of a target page by changing a voltage level ofa sensing node in the page buffer based on the data stored on the firstand second registers; discriminating whether or not the performancenumber of the LSB-program operation is higher than a given number;performing an LSB-verifying operation of the target page in accordancewith a result of the discriminating process, wherein the LSB-verifyingoperation is performed when the number of the LSB-program operation ishigher than the given number; initializing the first register and thesecond register of the page buffer; performing a third read operation ofthe source page based on a second read voltage between the first readvoltage and the third read voltage to store data obtained by the secondregister; transmitting the data obtained by the third read operation tothe first resister; initializing the second resister of the page buffer;performing a fourth read operation of the target page based on the firstread voltage to store data obtained by the fourth read operation on thesecond register; changing or maintaining the data stored on the firstregister in accordance with the data stored on the first register andthe second register; and performing a most significant bit (MSB) programoperation and an MSB-verifying operation by changing a voltage level ofthe sensing node in the page buffer based on data of the first andsecond registers.
 2. The method of claim 1, wherein the step ofperforming the second read operation includes: changing or maintainingdata obtained by the first read operation in accordance with the secondread operation.
 3. The method of claim 1, wherein the step of performingthe LSB-program operation includes: changing or maintaining the voltagelevel of the sensing node in the page buffer based on the data stored onthe first and second registers.
 4. The method of claim 1, wherein theLSB-verifying operations is performed after the performance number ishigher than the given number.
 5. The method of claim 1, wherein theLSB-verifying operations is omitted before the performance number ishigher than the given number.
 6. The method of claim 1, wherein the stepof performing the MSB-program operation and the MSB-verifying operationincludes: performing the MSB-program operation; performing theMSB-verifying operation; and repeating the MSB-program operation and theMSB-verifying operation in accordance with a result of the MSB-verifyingoperation.